This is an R Markdown Notebook. When you execute code within the notebook, the results appear beneath the code.
Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Ctrl+Shift+Enter.
get_data_to_display_at_upload(filename)
Error in get_data_to_display_at_upload(filename) :
could not find function "get_data_to_display_at_upload"
# mess with format
x=lubridate::as_datetime(as.numeric(times$time))
lubridate::hms(x)
lubridate::minute(x)
lubridate::seconds(x)
lubridate::seconds_to_period(as.numeric(times$time)) %>% lubridate::ms() # THIS?
lubridate::fast_strptime(x, format = "%H%M")
(parse_date_time2(times$time))
sub(":\\d{2}", "", times((minutes%/%60 + minutes%%60 /3600)/24))
as.numeric(times$time)%/%60 + as.numeric(times$time)%%60 /3600
plotly::plot_ly(
# BT Line
times,
type = 'scatter',
mode = 'lines',
x = ~ lubridate::as_datetime(as.numeric(time)),
line = list(color = "#4DB848"),
# x = ~seq(ms("00:00"), ms("10:10")),
# x = ~ lubridate::ms(Time2),
# x = ~ lubridate::as_datetime(Time1),
y = ~ BT,
# hovertemplate = paste('%{y: .1f}\u00b0F', '<br>%{x}<br>'),
hovertemplate = '%{y: .1f}\u00b0F',
showlegend = FALSE,
name = "BT"
) %>% plotly::layout(xaxis = list(tickformat = "%M:%S"))
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpUaGlzIGlzIGFuIFtSIE1hcmtkb3duXShodHRwOi8vcm1hcmtkb3duLnJzdHVkaW8uY29tKSBOb3RlYm9vay4gV2hlbiB5b3UgZXhlY3V0ZSBjb2RlIHdpdGhpbiB0aGUgbm90ZWJvb2ssIHRoZSByZXN1bHRzIGFwcGVhciBiZW5lYXRoIHRoZSBjb2RlLiANCg0KVHJ5IGV4ZWN1dGluZyB0aGlzIGNodW5rIGJ5IGNsaWNraW5nIHRoZSAqUnVuKiBidXR0b24gd2l0aGluIHRoZSBjaHVuayBvciBieSBwbGFjaW5nIHlvdXIgY3Vyc29yIGluc2lkZSBpdCBhbmQgcHJlc3NpbmcgKkN0cmwrU2hpZnQrRW50ZXIqLiANCg0KYGBge3J9DQpsaWJyYXJ5KG1hZ3JpdHRyKQ0KZmlsZW5hbWUgPC0NCiAganNvbmxpdGU6OnJlYWRfanNvbigiQzovVXNlcnMvamFjY2kvRG9jdW1lbnRzL0RTIDcxMC9jb2ZmZWVfcm9hc3RpbmdfcHJvZmlsZXMvZGF0YS1yYXcvc2F2ZWQvSGFpdGktLTIwMjEtMDItMDktMjAtMTUtMTcuanNvbiIpDQojIGZpbGVuYW1lMiA8LQ0KIyBqc29ubGl0ZTo6dG9KU09OKCJDOi9Vc2Vycy9qYWNjaS9Eb2N1bWVudHMvRFMgNzEwL2NvZmZlZV9yb2FzdGluZ19wcm9maWxlcy9kYXRhLXJhdy9zYXZlZC9BbmdvbGEtLTIwMjEtMDItMjYtMTYtMTYtMjIuanNvbiIpDQpgYGANCmBgYHtyfQ0KIyBUaGVzZSBhcmUgaW4gZmN0X3VwbG9hZF9qc29uX2RhdGENCmdldF9kYXRhX3RvX2Rpc3BsYXlfYXRfdXBsb2FkKGZpbGVuYW1lKQ0KZ2V0X3NwZWNpYWxfZXZlbnRfdGltZXMoZmlsZW5hbWUpIA0KZ2V0X2RhdGFfb2ZfdGltZXNfdGVtcHMoZmlsZW5hbWUpIA0KZ2V0X2V2ZW50X3RpbWVzKGZpbGVuYW1lKQ0KYGBgDQpgYGB7ciBwdXQgZGF0YSBpbiBjaGFydH0NCiMgVGltZSB3aXRoIEJUIGFuZCBFVA0KDQp0aW1lcyA8LQ0KICBnZXRfZGF0YV9vZl90aW1lc190ZW1wcyhmaWxlbmFtZSkgJT4lDQogIGRwbHlyOjptdXRhdGVfaWYoaXMuY2hhcmFjdGVyLCBhcy5udW1lcmljKQ0Kc3BlY2lhbF90aW1lcyA8LSBnZXRfc3BlY2lhbF9ldmVudF90aW1lcyhmaWxlbmFtZSkNCmV2ZW50X3RpbWVzIDwtDQogIGdldF9ldmVudF90aW1lcyhmaWxlbmFtZSkgJT4lDQogIGRwbHlyOjptdXRhdGVfaWYoaXMuY2hhcmFjdGVyLCBhcy5udW1lcmljKQ0KDQojIEdldCBkYXRhIGZvciBwYXJhbWV0ZXJzIGZvciBjaGFydHMNCnRpbWVfemVybyA9IGx1YnJpZGF0ZTo6YXNfZGF0ZXRpbWUoIjE5NzAtMDEtMDEgMDA6MDA6MDAgVVRDIikNCiMgdGltZV9tYXggPSBtYXgoYXNfZGF0ZXRpbWUocHJvZmlsZSRUaW1lMiksIG5hLnJtID0gVFJVRSkNCmRyeV9lbmQgPSBsdWJyaWRhdGU6OmFzX2RhdGV0aW1lKGV2ZW50X3RpbWVzJGRyeV90aW1lKQ0KZmlyc3RfY3JhY2tfc3RhcnQgPSBsdWJyaWRhdGU6OmFzX2RhdGV0aW1lKGV2ZW50X3RpbWVzJGZjX3RpbWVfc3RhcnQpDQpmaXJzdF9jcmFja19lbmQgPSBsdWJyaWRhdGU6OmFzX2RhdGV0aW1lKGV2ZW50X3RpbWVzJGZjX3RpbWVfZW5kKQ0Kc2Vjb25kX2NyYWNrX3N0YXJ0ID0gbHVicmlkYXRlOjphc19kYXRldGltZShldmVudF90aW1lcyRzY190aW1lX3N0YXJ0KQ0KZHJvcF90aW1lID0gbHVicmlkYXRlOjphc19kYXRldGltZShldmVudF90aW1lcyRkcm9wX3RpbWUpDQptYXhfdGVtcCA9IDUwMCAjIEhpZ2hlc3QgdGVtcCBpbiBjaGFydA0KDQphZGRfdGltZXNfdG9fZGVsdGEgPC0NCiAgZnVuY3Rpb24oY2xlYW5lZF9kZWx0YXMsDQogICAgICAgICAgIHRwX2luZGV4ID0gYXMuaW50ZWdlcihmaWxlbmFtZSRjb21wdXRlZCRUUF9pZHgpLA0KICAgICAgICAgICB0aW1lX2xpc3QgPSB0aW1lcyR0aW1lKSB7DQogICAgIyB0cF9pbmRleCA9IGFzLmludGVnZXIoZmlsZW5hbWUkY29tcHV0ZWQkVFBfaWR4KQ0KICAgIHRpbWVfbGlzdCA9IHRpbWVzJHRpbWUgIyA0NzINCiAgICBjbGVhbmVkX2RlbHRhcyAlPiUgZHBseXI6OnNsaWNlKHRwX2luZGV4OmRwbHlyOjpuKCkpICU+JSBkcGx5cjo6bXV0YXRlKHRpbWV4ID0gdGltZV9saXN0KQ0KICB9DQoNCiMgRGVsdGFzIHJlYWR5IHRvIGJlIHBsb3R0ZWQNCmRlbHRhc19jbGVhbiA9IGFkZF90aW1lc190b19kZWx0YShjbGVhbikNCnBsb3RseTo6cGxvdF9seSgNCiAgIyBCVCBMaW5lDQogIHRpbWVzLA0KICB0eXBlID0gJ3NjYXR0ZXInLA0KICBtb2RlID0gJ2xpbmVzJywNCiAgeCA9IH4gbHVicmlkYXRlOjphc19kYXRldGltZSh0aW1lKSwNCiAgbGluZSA9IGxpc3QoY29sb3IgPSAiIzREQjg0OCIpLA0KICAjIHggPSB+c2VxKG1zKCIwMDowMCIpLCBtcygiMTA6MTAiKSksDQogICMgeCA9IH4gbHVicmlkYXRlOjptcyhUaW1lMiksDQogICMgeCA9IH4gbHVicmlkYXRlOjphc19kYXRldGltZShUaW1lMSksDQogIHkgPSB+IEJULA0KICAjIGhvdmVydGVtcGxhdGUgPSBwYXN0ZSgnJXt5OiAuMWZ9XHUwMGIwRicsICc8YnI+JXt4fTxicj4nKSwNCiAgaG92ZXJ0ZW1wbGF0ZSA9ICcle3k6IC4xZn1cdTAwYjBGJywNCiAgc2hvd2xlZ2VuZCA9IEZBTFNFLA0KICBuYW1lID0gIkJUIg0KKSAlPiUNCiAgcGxvdGx5OjphZGRfdHJhY2UoDQogICAgdGltZXMsDQogICAgIyBFVCBMaW5lDQogICAgbW9kZSA9ICdsaW5lcycsDQogICAgeCA9IH4gbHVicmlkYXRlOjphc19kYXRldGltZSh0aW1lKSwNCiAgICB5ID0gfiBFVCwNCiAgICBsaW5lID0gbGlzdChjb2xvciA9ICIjRDUwMDMyIiksDQogICAgbmFtZSA9ICJFVCINCiAgKSAlPiUNCiAgIyBhZGRfdHJhY2UoICAgICAgICAjIENoYW5nZSBCVCBMaW5lDQogICMgICBtb2RlID0gJ2xpbmVzJywNCiAgIyAgIHggPSB+IGx1YnJpZGF0ZTo6YXNfZGF0ZXRpbWUoVGltZTIpLA0KICAjICAgeSA9IH4gY2hhbmdlX0JULA0KICAjICAgbGluZSA9IGxpc3QoY29sb3IgPSAiIzQyOEJDQSIpLA0KICAjICAgbmFtZSA9ICJcdTAzOTRCVCIsDQogICMgICB5YXhpcyA9ICJ5MiINCiAgIyApICU+JQ0KICBwbG90bHk6OmxheW91dChob3Zlcm1vZGUgPSAieCB1bmlmaWVkIikgJT4lDQogICMgZmlsdGVyKCFpcy5uYShFdmVudCksDQogICMgICAgICAgICFpcy5uYShUaW1lMiksDQogICMgICAgICAgIEV2ZW50ICE9ICJEcm9wIiwNCiAgIyAgICAgICAgIWdyZXBsKCJeQ2hhcmdlIiwgRXZlbnQpKSAlPiUNCnBsb3RseTo6YWRkX2Fubm90YXRpb25zKA0KICB4ID0gIH5sdWJyaWRhdGU6OmFzX2RhdGV0aW1lKGFzLm51bWVyaWMoc3BlY2lhbF90aW1lcyR0aW1lX29mX2V2ZW50KSksICMgaml0dGVyKCkgPw0KICB5ID0gfiA0MDAsDQogIHRleHQgPSB+IHNwZWNpYWxfdGltZXMkdHlwZV9vZl9ldmVudCwNCiAgIyB5YXhpcyA9ICJ5MiIsDQogIHRleHRwb3NpdGlvbiA9ICJ0b3AgY2VudGVyIiwNCiAgc2hvd2Fycm93ID0gRkFMU0UsDQogICMgYXJyb3doZWFkID0gLjUsDQogICMgYXJyb3d3aWR0aCA9IDEsDQogIGZvbnQgPSBsaXN0KHNpemUgPSAxMiwgY29sb3IgPSAiYmxhY2siKQ0KICAjIGJnY29sb3IgPSB+IGV2ZW50X2NvbG9yDQopICU+JSAgICAgICAgICAgICAgICAgICAgICMgQWRkIGxpbmVzIGZvciBwaGFzZXMNCnBsb3RseTo6YWRkX3NlZ21lbnRzKA0KICB4ID0gfiBkcnlfZW5kLA0KICB4ZW5kID0gfiBkcnlfZW5kLA0KICB5ID0gIH4gMCwNCiAgeWVuZCA9ICB+IG1heF90ZW1wLA0KICAjIG9wYWNpdHkgPSAxLA0KICBsaW5lID0gbGlzdCgNCiAgICBkYXNoID0gImRhc2giLA0KICAgIGNvbG9yID0gJyNBQUFBQUEnLA0KICAgIHdpZHRoID0gMg0KICApLA0KICB0ZXh0ID0gIkRyeSBlbmQiDQopICU+JQ0KICBwbG90bHk6OmFkZF9zZWdtZW50cygNCiAgICB4ID0gfiBmaXJzdF9jcmFja19zdGFydCwNCiAgICB4ZW5kID0gfiBmaXJzdF9jcmFja19zdGFydCwNCiAgICB5ID0gIH4gMCwNCiAgICB5ZW5kID0gIH4gbWF4X3RlbXAsDQogICAgIyBvcGFjaXR5ID0gMSwNCiAgICBsaW5lID0gbGlzdCgNCiAgICAgIGRhc2ggPSAiZGFzaCIsDQogICAgICBjb2xvciA9ICcjQUFBQUFBJywNCiAgICAgIHdpZHRoID0gMg0KICAgICksDQogICAgdGV4dCA9ICJGQyBzdGFydCINCiAgKSAlPiUNCiAgcGxvdGx5OjphZGRfc2VnbWVudHMoDQogICAgeCA9IH4gZmlyc3RfY3JhY2tfZW5kLA0KICAgIHhlbmQgPSB+IGZpcnN0X2NyYWNrX2VuZCwNCiAgICB5ID0gIH4gMCwNCiAgICB5ZW5kID0gIH4gbWF4X3RlbXAsDQogICAgIyBvcGFjaXR5ID0gMSwNCiAgICBsaW5lID0gbGlzdCgNCiAgICAgIGRhc2ggPSAiZGFzaCIsDQogICAgICBjb2xvciA9ICcjQUFBQUFBJywNCiAgICAgIHdpZHRoID0gMg0KICAgICksDQogICAgdGV4dCA9ICJGQyBlbmQiDQogICkgJT4lDQogICMgRm9yIHNlY29uZF9jcmFzaF9zdGFydA0KICAjIGFkZF9zZWdtZW50cyggeCA9IH5maXJzdF9jcmFja19zdGFydCwgeGVuZCA9IH5maXJzdF9jcmFja19zdGFydCwgeSA9fiAwLCB5ZW5kPX41MDAsDQogICMgICAgICAgICAgICAgICAjIG9wYWNpdHkgPSAxLA0KICAjICAgICAgICAgICAgICAgbGluZSA9IGxpc3QoZGFzaD0iZGFzaCIsDQogICMgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvciA9ICdncmF5ODAnLA0KICAjICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggPSAyKSwgdGV4dCA9ICJGQyBzdGFydCIpICU+JQ0KICBwbG90bHk6OmFkZF9zZWdtZW50cygNCiAgICB4ID0gfiBkcm9wX3RpbWUsDQogICAgeGVuZCA9IH4gZHJvcF90aW1lLA0KICAgIHkgPSAgfiAwLA0KICAgIHllbmQgPSAgfiBtYXhfdGVtcCwNCiAgICAjIG9wYWNpdHkgPSAxLA0KICAgIGxpbmUgPSBsaXN0KA0KICAgICAgZGFzaCA9ICJkYXNoIiwNCiAgICAgIGNvbG9yID0gJyNBQUFBQUEnLA0KICAgICAgd2lkdGggPSAyDQogICAgKSwNCiAgICB0ZXh0ID0gIkZDIHN0YXJ0Ig0KICApICU+JQ0KICAgcGxvdGx5OjphZGRfdHJhY2UoDQogICAgIGRhdGEgPSBkZWx0YXNfY2xlYW4sICAgICAgICAjIENoYW5nZSBCVCBMaW5lDQogICAgICAgIG1vZGUgPSAnbGluZXMnLA0KICAgICAgICB4ID0gfiBsdWJyaWRhdGU6OmFzX2RhdGV0aW1lKHRpbWV4KSwNCiAgICAgICAgeSA9IH4gZHRlbXAxLA0KICAgICAgICBsaW5lID0gbGlzdChjb2xvciA9ICIjNDI4QkNBIiksDQogICAgICAgIG5hbWUgPSAiXHUwMzk0QlQiLA0KICAgICAgICB5YXhpcyA9ICJ5MiINCiAgICAgICkgJT4lIA0KICAgICBwbG90bHk6OmFkZF90cmFjZSgNCiAgICAgZGF0YSA9IGRlbHRhc19jbGVhbiwgICAgICAgICMgQ2hhbmdlIEVUIExpbmUNCiAgICAgICAgbW9kZSA9ICdsaW5lcycsDQogICAgICAgIHggPSB+IGx1YnJpZGF0ZTo6YXNfZGF0ZXRpbWUodGltZXgpLA0KICAgICAgICB5ID0gfiBkdGVtcDIsDQogICAgICAgIGxpbmUgPSBsaXN0KGNvbG9yID0gInllbGxvdyIpLA0KICAgICAgICBuYW1lID0gIlx1MDM5NEVUIiwNCiAgICAgICAgeWF4aXMgPSAieTIiDQogICAgICApICU+JSANCiAgcGxvdGx5OjpsYXlvdXQoDQogICAgIyBUaGUgcmlnaHQgc2lkZSB5LWF4aXMNCiAgICB5YXhpczIgPSBsaXN0KA0KICAgICAgemVyb2xpbmUgPSBGLA0KICAgICAgc2hvd2xpbmUgPSBGLA0KICAgICAgc2hvd2dyaWQgPSBGLA0KICAgICAgdGlja2ZvbnQgPSBsaXN0KGNvbG9yID0gIiM0MjhCQ0EiKSwNCiAgICAgIHRpY2tzdWZmaXggPSAiXHUwMGIwRiIsDQogICAgICBvdmVybGF5aW5nID0gInkiLA0KICAgICAgc2lkZSA9ICJyaWdodCIsDQogICAgICB0aXRsZSA9ICIiDQogICAgKSwNCiAgICB4YXhpcyA9IGxpc3QoDQogICAgICAjIGdyaWRjb2xvciA9IHRvUkdCKCJncmF5ODUiKSwNCiAgICAgIHRpdGxlID0gIiIsDQogICAgICB6ZXJvbGluZSA9IEYsDQogICAgICBzaG93bGluZSA9IEYsDQogICAgICBzaG93Z3JpZCA9IEYsDQogICAgICB0aWNrMCA9IHRpbWVfemVybywNCiAgICAgIHRpY2tzID0gImluc2lkZSIsDQogICAgICB0aWNrY29sb3IgPSAicmdiKDI0NSwyNDUsMjQ1KSIsDQogICAgICB0aWNrZm9ybWF0ID0gIiVNOiVTIiwNCiAgICAgIGR0aWNrID0gMzAwMDAgIyBUaWNrIGV2ZXJ5IDMwIHNlY29uZHMNCiAgICApLA0KICAgIHlheGlzID0gbGlzdCgNCiAgICAgIHRpdGxlID0gIiIsDQogICAgICB0aWNrc3VmZml4ID0gIlx1MDBiMEYiLA0KICAgICAgemVyb2xpbmUgPSBGLA0KICAgICAgc2hvd2xpbmUgPSBGLA0KICAgICAgc2hvd2dyaWQgPSBGDQogICAgKSwNCiAgICBtYXJnaW4gPSBsaXN0KA0KICAgICAgciA9IDMwLA0KICAgICAgbCA9IDAsDQogICAgICBiID0gMCwNCiAgICAgIHQgPSAwDQogICAgKSwNCiAgICBwbG90X2JnY29sb3IgPSAncmdiKDI0NSwyNDUsMjQ1KScsDQogICAgIyBtYWtlIGdyZXkgYmFja2dyb3VuZA0KICAgIHBhcGVyX2JnY29sb3IgPSAncmdiKDI0NSwyNDUsMjQ1KScNCiAgKQ0KYGBgDQpgYGB7cn0NCiMgbWVzcyB3aXRoIGZvcm1hdA0KDQp4PWx1YnJpZGF0ZTo6YXNfZGF0ZXRpbWUoYXMubnVtZXJpYyh0aW1lcyR0aW1lKSkNCmx1YnJpZGF0ZTo6aG1zKHgpDQpsdWJyaWRhdGU6Om1pbnV0ZSh4KQ0KbHVicmlkYXRlOjpzZWNvbmRzKHgpDQpsdWJyaWRhdGU6OnNlY29uZHNfdG9fcGVyaW9kKGFzLm51bWVyaWModGltZXMkdGltZSkpICU+JSBsdWJyaWRhdGU6Om1zKCkgIyBUSElTPw0KbHVicmlkYXRlOjpmYXN0X3N0cnB0aW1lKHgsIGZvcm1hdCA9ICIlSCVNIikNCihwYXJzZV9kYXRlX3RpbWUyKHRpbWVzJHRpbWUpKQ0KDQpzdWIoIjpcXGR7Mn0iLCAiIiwgdGltZXMoKG1pbnV0ZXMlLyU2MCArICBtaW51dGVzJSU2MCAvMzYwMCkvMjQpKQ0KDQphcy5udW1lcmljKHRpbWVzJHRpbWUpJS8lNjAgICsgIGFzLm51bWVyaWModGltZXMkdGltZSklJTYwIC8zNjAwDQoNCg0KICAgcGxvdGx5OjpwbG90X2x5KA0KICAgICAgIyBCVCBMaW5lDQogICAgICB0aW1lcywNCiAgICAgIHR5cGUgPSAnc2NhdHRlcicsDQogICAgICBtb2RlID0gJ2xpbmVzJywNCiAgICAgIHggPSB+IGx1YnJpZGF0ZTo6YXNfZGF0ZXRpbWUoYXMubnVtZXJpYyh0aW1lKSksDQogICAgICBsaW5lID0gbGlzdChjb2xvciA9ICIjNERCODQ4IiksDQogICAgICAjIHggPSB+c2VxKG1zKCIwMDowMCIpLCBtcygiMTA6MTAiKSksDQogICAgICAjIHggPSB+IGx1YnJpZGF0ZTo6bXMoVGltZTIpLA0KICAgICAgIyB4ID0gfiBsdWJyaWRhdGU6OmFzX2RhdGV0aW1lKFRpbWUxKSwNCiAgICAgIHkgPSB+IEJULA0KICAgICAgIyBob3ZlcnRlbXBsYXRlID0gcGFzdGUoJyV7eTogLjFmfVx1MDBiMEYnLCAnPGJyPiV7eH08YnI+JyksDQogICAgICBob3ZlcnRlbXBsYXRlID0gJyV7eTogLjFmfVx1MDBiMEYnLA0KICAgICAgc2hvd2xlZ2VuZCA9IEZBTFNFLA0KICAgICAgbmFtZSA9ICJCVCINCiAgICApICU+JSBwbG90bHk6OmxheW91dCh4YXhpcyA9IGxpc3QodGlja2Zvcm1hdCA9ICIlTTolUyIpKQ0KYGBgDQpgYGB7cn0NCnBsb3RseTo6cGxvdF9seSgNCiAgIyBCVCBMaW5lDQogIHRpbWVzLA0KICB0eXBlID0gJ3NjYXR0ZXInLA0KICBtb2RlID0gJ2xpbmVzJywNCiAgeCA9IH4gbHVicmlkYXRlOjphc19kYXRldGltZSh0aW1lKSwNCiAgbGluZSA9IGxpc3QoY29sb3IgPSAiIzREQjg0OCIpLA0KICAjIHggPSB+c2VxKG1zKCIwMDowMCIpLCBtcygiMTA6MTAiKSksDQogICMgeCA9IH4gbHVicmlkYXRlOjptcyhUaW1lMiksDQogICMgeCA9IH4gbHVicmlkYXRlOjphc19kYXRldGltZShUaW1lMSksDQogIHkgPSB+IEJULA0KICAjIGhvdmVydGVtcGxhdGUgPSBwYXN0ZSgnJXt5OiAuMWZ9XHUwMGIwRicsICc8YnI+JXt4fTxicj4nKSwNCiAgaG92ZXJ0ZW1wbGF0ZSA9ICcle3k6IC4xZn1cdTAwYjBGJywNCiAgc2hvd2xlZ2VuZCA9IEZBTFNFLA0KICBuYW1lID0gIkJUIg0KKSAlPiUNCiAgIHBsb3RseTo6YWRkX3RyYWNlKGRhdGEgPSBkZWx0YXNfY2xlYW4sICAgICAgICAjIENoYW5nZSBCVCBMaW5lDQogICAgICAgIG1vZGUgPSAnbGluZXMnLA0KICAgICAgICB4ID0gfiBsdWJyaWRhdGU6OmFzX2RhdGV0aW1lKHRpbWV4KSwNCiAgICAgICAgeSA9IH4gZHRlbXAxLA0KICAgICAgICBsaW5lID0gbGlzdChjb2xvciA9ICIjNDI4QkNBIiksDQogICAgICAgIG5hbWUgPSAiXHUwMzk0QlQiLA0KICAgICAgICB5YXhpcyA9ICJ5MiINCiAgICAgICkgDQpgYGANCg0KDQo=